package com.sumainfor.pc.market.controller.gmf;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sumainfor.common.util.JsonResult;
import com.sumainfor.pc.market.service.EpcDataGmfService;
import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @Author Eddy·Chen
 * @Email 835033913@qq.com
 * @Create 2019-05-17 13:45
 */
@RestController
@RequestMapping("/gmf/epc")
public class EpcDataController {

    @Autowired
    private EpcDataGmfService service;


    /**
     * 查询主页表格数据
     *
     * @param areaId    公司编号
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @return
     */
    @RequestMapping("/getMainTable")
    public JsonResult getMainTable(Integer areaId, String startTime, String endTime) {
        if (StringUtils.isBlank(startTime) || StringUtils.isBlank(endTime)) {
            //给默认值
            DateTime dtTarget = DateTime.now();
            DateTime.Property month = dtTarget.dayOfMonth();
            endTime = month.withMaximumValue().toString("yyyy-MM-dd");
            startTime = month.withMinimumValue().toString("yyyy-MM-dd");
        }
        return service.getMainTable(areaId, startTime, endTime);
    }

    /**
     * 查询子表格数据 装修计划
     *
     * @param page
     * @param miId      公司编号
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @return
     */
    @RequestMapping("/selectPlanForSubTable")
    public JsonResult selectPlanForSubTable(Page page, Integer miId, String startTime, String endTime) {
        if (miId == null) {
            return JsonResult.errorForEmpty();
        }
        return service.selectPlanForSubTable(page, miId, startTime, endTime);
    }


    /**
     * 查询子表格 装修套数
     *
     * @param page
     * @param miId      公司编号
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @return
     */
    @RequestMapping("/selectHousingForSubTable")
    public JsonResult selectHousingForSubTable(Page page, Integer miId, String startTime, String endTime) {
        if (miId == null) {
            return JsonResult.errorForEmpty();
        }
        return service.selectHousingForSubTable(page, miId, startTime, endTime);
    }


    /**
     * 查询装修 所需价格
     *
     * @param page
     * @param miId      公司编号
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @return
     */
    @RequestMapping("/selectCostForSubTable")
    public JsonResult selectCostForSubTable(Page page, Integer miId, String startTime, String endTime) {
        if (miId == null) {
            return JsonResult.errorForEmpty();
        }
        return service.selectCostForSubTable(page, miId, startTime, endTime);
    }

}
